<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/SiteUTF8.master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
	Список клиентов компании
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <table id="list"></table>
    <div id="pager">
    </div>
    <table cellspacing="0" id="toolbar-content" cellpadding="0" border="0" role="row" 
    style="height:100%; width: 100%; table-layout: fixed;" class="ui-pg-table">
    <tbody>
    <tr>
    <%Html.RenderPartial("ClientActionsControl", Model, this.ViewData); %>
    </tr></tbody></table>
    <div id="div-html-loader"></div>

</asp:Content>          
<asp:Content ID="Content4" ContentPlaceHolderID="HeadContent" runat="server">
<link href="/Scripts/jquery-ui-1.7.2.custom.css" rel="stylesheet" type="text/css" />
<link href="/Scripts/ui.jqgrid.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../../Scripts/i18n/grid.locale-ru.js"></script>
<script src="/Scripts/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="/Scripts/grid.jqueryui.js" type="text/javascript"></script>
<script src="/Scripts/ui.core.js" type="text/javascript"></script>
<script src="/Scripts/ui.dialog.js" type="text/javascript"></script> 
<script src="/Scripts/jquery.maskedinput-1.2.2.min.js" type="text/javascript"></script>
<script src="/Scripts/OrderScripts.js" type="text/javascript"></script>
<script type="text/javascript">
    jQuery.noConflict();
    jQuery(document).ready(function() {
        InitClientGrid(); //Index
    });
    function InitClientGrid() {
        var pager = jQuery('#pager');
        GridID = 'list';
        jQuery("#list").jqGrid({
            url: "/ViewClient/Index",
            datatype: 'json',
            mtype: 'GET',
            colNames: ['ФИО (псевдоним)', 'Компания', 'Должность','Мобильный телефон',
                        'Рабочий телефон','e-mail','Skype','Адрес','Другие контакты','Примечание'],
            colModel: [
      { name: 'Имя', index: 'Имя', width: 70, align: 'left', searchoptions: { sopt: ['eq', 'ne', 'cn', 'bw']} },
      { name: 'Название_Компании', index: 'Название_Компании', width: 70, 
            align: 'left', searchoptions: { sopt: ['cn', 'bw'] }, sortable: false},
      { name: 'Должность', index: 'Должность', hidden: true, width: 70, align: 'left', searchoptions: { sopt: ['cn', 'bw'] }, sortable: false },
      { name: 'Тел_Моб', index: 'Тел_Моб', width: 70, align: 'left', searchoptions: { sopt: ['eq','cn', 'bw'] }, sortable: false },
      { name: 'Тел_Раб', index: 'Тел_Раб', width: 70, align: 'left', searchoptions: { sopt: ['eq','cn', 'bw'] }, sortable: false },
      { name: 'EMail', index: 'EMail', width: 70, hidden: true, align: 'left', searchoptions: { sopt: ['eq', 'cn', 'bw'] }, sortable: false },
      { name: 'Skype', index: 'Skype', width: 70, hidden: true, align: 'left', searchoptions: { sopt: ['eq', 'cn', 'bw'] }, sortable: false },
      { name: 'Адрес', index: 'Адрес', width: 100, align: 'left', searchoptions: { sopt: ['cn', 'bw'] }, sortable: false },
      { name: 'Контакты_Другие', index: 'Контакты_Другие', hidden: true, width: 200, align: 'left', searchoptions: { sopt: ['cn', 'bw'] }, sortable: false },
      { name: 'Описание', index: 'Описание', width: 100, hidden: true, align: 'left', searchoptions: { sopt: ['cn', 'bw'] }, sortable: false }],
            pager: pager,
            rowNum: 15,
            rowList: [15, 25, 40, 50],
            sortname: 'ИД_Клиент',
            sortorder: "desc",
            viewrecords: true,
            imgpath: '/Content/images',
            caption: 'Список клиентов компании',
            autowidth: true,
            height: 400,
            toolbar: [true, 'top']
        });
        jQuery("#list").navGrid('#pager', { refresh: true, add: false, del: false, edit: false, search: true, view: false },
       {}, // default settings for edit
       {}, // default settings for add
       {}, // delete
       {closeOnEscape: true, multipleSearch: true, closeAfterSearch: true }, // search options
       {}
     ).navSeparatorAdd("#pager", { sepclass: "ui-separator" })
     .navButtonAdd('#pager', {
         caption: "Печать таблицы", /*buttonimg:"themes/basic/images/row_add.gif",*/
         onClickButton: function () { PrintTable(); }, position: "last"
     })
     .navSeparatorAdd("#pager", { sepclass: "ui-separator" });

        jQuery("#t_list").height(24); //Set height of toolbar
        jQuery("#t_list").append(jQuery('#toolbar-content'));
        //    //Init Dialog
        InitDialog();
    }
    function Create() {
        jQuery.get('/ViewClient/Create', function(data) {
            jQuery("#div-html-loader").html(data);
        });       
    }
    function Details() {
        var grid = jQuery("#list");
        var rowKey = grid.getGridParam("selrow");
        if (rowKey) {
            jQuery("#div-html-loader").load('/ViewClient/Details/' + rowKey + '?fake=' + date.getMilliseconds().toString());
        }
        else {
            jQuery("#span-dialog").html('');
            jQuery("#span-dialog").html("Сначала выберите запись");
            jQuery("#dialog").dialog('open');
        }
    }
    function Edit() {
        var grid = jQuery("#list");
        var rowKey = grid.getGridParam("selrow");
        if (rowKey) {
            jQuery("#div-html-loader").load('/ViewClient/Edit/' + rowKey + '?fake=' + date.getMilliseconds().toString());
            ReloadClientGrid();
        }
        else {
            jQuery("#span-dialog").html('');
            jQuery("#span-dialog").html("Сначала выберите запись");
            jQuery("#dialog").dialog('open');
        }
    }
    function Delete() {
        
            var grid = jQuery("#list");
            var rowKey = grid.getGridParam("selrow");
            if (rowKey) {
                if (confirm('Вы действительно хотите удалить клиента?')) 
                {
                    jQuery.get('/ViewClient/Delete/' + rowKey + '?fake=' + date.getMilliseconds().toString(), function (data) {
                        jQuery("#span-dialog").html(data);
                        ReloadClientGrid();
                        jQuery("#dialog").dialog('open');
                    });
                }
            }
            else {
                jQuery("#span-dialog").html("Сначала выберите запись");
                jQuery("#dialog").dialog('open');
            }
    }
    function ClientOrders() {
        var grid = jQuery("#list");
        var rowKey = grid.getGridParam("selrow");
        if (rowKey) {
            var popupWin = window.open('/ViewOrder/ClientOrders/' + rowKey + '?fake=' + date.getMilliseconds().toString(),
            '');
            popupWin.focus();
        }
        else {
            jQuery("#span-dialog").html("Сначала выберите клиента");
            jQuery("#dialog").dialog('open');
        }
    }
    function PrintTable() {

        //        var myObj=jQuery("#list").getGridParam('postData');
        //        for (myKey in myObj) {
        //            alert("myObj[" + myKey + "] = " + myObj[myKey]);
        //        }
        //alert('download');
        jQuery.download('/Report/PrintClientGrid', jQuery("#list").getGridParam('postData'));
    }

    jQuery.download = function (url, data, method) {
        //url and data options required
        if (url && data) {
            //data can be string of parameters or array/object
            data = typeof data == 'string' ? data : jQuery.param(data);
            //split params into form inputs
            var inputs = '';
            jQuery.each(data.split('&'), function () {
                var pair = this.split('=');
                inputs += '<input type="hidden" name="' + pair[0] + '" value="' + pair[1] + '" />';
            });
            //send request
            jQuery('<form action="' + url + '" method="' + (method || 'post') + '">' + inputs + '</form>')
		.appendTo('body').submit().remove();
        };
    };

    var GridID;
    function ReloadClientGrid() {
        var grid = jQuery("#" + GridID);
        grid.trigger("reloadGrid");
    }
</script>
</asp:Content>

<asp:Content ContentPlaceHolderID="HintListPlaceHolder" ID="HintListContent" runat="server">
Подсказки:<br />
<ul>
<li>
В заказах удаленного клиента в поле "Клиент" будет стоять "Нет".
</li>
</ul>
</asp:Content>